Understanding Hacking: The Four Key Types